[アップデート] Amazon WorkSpaces Personalにアイドル切断タイムアウトが導入されました

[アップデート] Amazon WorkSpaces Personalにアイドル切断タイムアウトが導入されました

Clock Icon2024.11.28

しばたです。

先日AWSより「Amazon WorkSpaces Personalにアイドル切断タイムアウトが導入された」旨のアナウンスがありました。

https://aws.amazon.com/jp/about-aws/whats-new/2024/11/idle-disconnect-timeout-amazon-workspaces/

利用条件などが少しややこしいので本記事で解説したいと思います。

どういうことか?

今回の更新に触れる前にAmazon WorkSpaces Personalの 切断 についておさらいしておきます。

Amazon WorkSpaces Personalには2つの実行モードがあり課金体系が異なります。
24時間起動を前提とした「常にオン (AlwaysOn)」と一定時間利用が無くなるとWorkSpace環境が自動で停止する「自動停止 (AutoStop)」があり、今回は自動停止 (AutoStop)に関わる内容となります。

自動停止モードの場合でWorkSpace環境が実際に停止されるのは「切断後 一定時間を経過した場合」であり、切断される条件としては

  • ユーザーが明示的にWorkSpacesクライアントアプリを終了した場合
  • クライアントデバイスがシャットダウンされた場合
  • クライアントデバイスとWorkSpaceサービスとの間に20分以上接続がない場合

となります。
詳細については以下の記事とドキュメントをご覧ください。

https://dev.classmethod.jp/articles/workspaces_stop/

https://docs.aws.amazon.com/ja_jp/workspaces/latest/adminguide/running-mode.html

最後のケースを除いてWorkSpacesの切断は利用者が明示的に行う必要があることが分かります。
このため、利用者がうっかり切断を忘れてしまうと自動停止が行われず意図しない料金がかかる場合があります。

今回の更新はこの部分を補完するもので「Amazon WorkSpaces Client(Web Client含む)で一定時間アイドル状態が続くと自動切断する」ことが可能になります。

ちなみにAppStream 2.0には以前からこの機能が存在しており、ほぼAppStream 2.0からの派生と言えるAmazon WorkSpaces Poolsでも提供当初からこの機能が使えます。
Amazon WorkSpaces Personalにこの機能が増えたのと利用者への通知が可能になったことが今回のポイントになります。

前提条件

便利な更新ですが利用するための前提条件が少し複雑です。
いくつかあるので順に説明していきます。

条件1 : Windows WorkSpace環境のみサポート

現時点ではWorkSpace環境のOSがWindowsである必要があります。
Linux WorkSpace環境はサポート外です。

また、詳細は後述しますが、各WorkSpace環境に対する設定はグループポリシーを使って行います。
このためグループポリシーを更新できる環境も必要です。

条件2 : 利用プロトコルとDCV host agentのバージョン

今回の更新を利用できるのはAmazon DCVプロトコル(旧WSP)環境のみであり、さらにWorkSpace環境内部に導入されているDCV host agent(アプリケーション名はWSP)のバージョンがVer.2.1.0.1554以降である必要があります。

このVer.2.1.0.1554は2024年5月15日にリリース済みで、適切に再起動とメンテナンスが継続されている環境であれば自動で条件を満たすバージョンに更新されているはずです。
何らかの理由でバージョンが古い場合はWorkSpace環境を再起動するかメンテナンスを有効にすれば更新されるでしょう。

条件3 : WorkSpaces Clientのバージョン

今回の更新を利用できるWorkSpaces Clientは

  • Windows Client : Ver.5.24以降
  • macOS Client : Ver.5.24以降
  • Linux Client : Ver.2024.7以降

となります。

簡単に言うとOS問わず本日(2024年11月28日)時点での最新バージョンが必要です。
少し話が逸れますが、来年3月末に古いバージョンのサポートが切れるので今回を機に最新版に更新しておくと良いでしょう。

なおWeb Access(Web Client)については既にサポート済みであり前提条件なく利用可能です。

アイドル判定される条件

AWSのドキュメントにどの様な操作がアイドル判定に影響するのか記載されています。

こちらによると以下のイベントが発生した場合はアクティブであると判定するそうです。

  • Keyboard events
  • Mouse events (cursor movement, scrolling, clicking)
  • Stylus events
  • Touch events (tapping touchscreens, tablets)
  • Gamepad events
  • File storage operations (uploads, downloads, directory creation, list items)
  • Webcam streaming

そして

Audio in, audio out, and pixels changing don't qualify as user activity.

とある様に音声の入出力や画像の描画だけ変わった場合はアクティブ判定されないそうです。
例えばWorkSpace内部でYouTube等の動画を流して放置した場合はアクティブ判定されず自動切断の対象になる感じと考えると分かりやすいと思います。

ざっくり「利用者によるインタラクティブな操作が無い状態がアイドル」と考えておくと良さそうです。

試してみた

ここからは実際に検証環境を作って動作確認していきます。

0. 検証環境

私の検証用AWSアカウントの東京リージョンにVPCを一つ用意し、そこにAWS Managed Microsoft ADをディレクトリとしてWindows Server 2022のWorkSpace環境を一つ用意しました。

amazon-workspaces-supports-idle-disconnect-timeout-01

前提条件を満たすためにプロトコルはDCV (旧WSP)、実行モードは自動停止 (AutoStop)としています。
この環境に対して最新のWindows Client Ver.5.24.1から接続します。

amazon-workspaces-supports-idle-disconnect-timeout-02

DCV host agentのバージョンは最新のVer.2.1.0.1792です。

1. グループポリシーの準備

上記WorkSpace環境でアイドル切断タイムアウトを有効にするためにグループポリシーを設定します。
DCV(旧WSP)用のグループポリシー管理テンプレートはWorkSpace内部のC:\Program Files\Amazon\WSP\フォルダにあるので、ここからwsp.admxwsp.admlをドメインのセントラルストアにコピーしておきます。

amazon-workspaces-supports-idle-disconnect-timeout-03

セントラルストアは\\<ドメインのFQDN>\SYSVOL\<ドメインのFQDN>\Policies\PolicyDefinitionsとなり、今回はcorp.contoso.comドメインにしたので

  • \\corp.contoso.com\SYSVOL\corp.contoso.com\Policies\PolicyDefinitions

になります。
(なおPolicyDefinitionsフォルダが無い場合は新規作成してください)
wsp.admlは言語リソースのためさらにen-USサブディレクトリを作成してそこにコピーしてください。

amazon-workspaces-supports-idle-disconnect-timeout-04

この状態でグループポリシー管理コンソール(gpmc)から新しいポリシーを作成します。
今回はWorkSpaces Personal Idle Disconnect Timeout Policyという名前で作成しておきます。

作成したポリシーを編集し、「コンピューターの構成」→「ポリシー」→「管理用テンプレート」→「Amazon」→「WSP」を選ぶとWorkSpaces用のポリシーが表示されるので「Configure Idle Disconnect Timeout」を選びダブルクリックします。

amazon-workspaces-supports-idle-disconnect-timeout-05

ポリシーの設定画面では

  • Idle disconnect timeout (minutes) : アイドル状態から自動切断するまでの経過時間(分)
    • デフォルト 60 分
    • 0を指定すると自動切断無効扱い
  • Idle disconnect timeout waring (seconds) : 自動切断を通知する残り時間 (秒)
    • デフォルト 60 秒
    • 0を指定すると通知無しで自動切断される

の2つの値を指定可能です。
今回は検証ですので、下図の様に「5分アイドル状態だと自動切断、切断60秒前に通知」という設定にしました。

amazon-workspaces-supports-idle-disconnect-timeout-06

ポリシーが有効になっているのを確認し、

amazon-workspaces-supports-idle-disconnect-timeout-07

各WorkSpaceが所属するOUに適用してやれば準備完了です。

amazon-workspaces-supports-idle-disconnect-timeout-08
WorkSpaceが所属するOUにグループポリシーをリンクしておく

マシンポリシーなのでWorkSpaceの再起動後に設定が反映されます。

2. 動作確認

この状態でWorkSpaces ClientからWorkSpace環境を起動し操作せずに放置しておきます。
しばらく(今回だと4分)待つとクライアントOS側にアイドル切断タイムアウトの通知がなされ、切断までのカウントダウンが始まります。

amazon-workspaces-supports-idle-disconnect-timeout-09

カウントダウン後さらに放置すると自動でクライアントアプリケーションが終了しWorkSpaceが切断されます。

amazon-workspaces-supports-idle-disconnect-timeout-10
無事自動切断されクライアントが終了する

カウントダウン中にWorkSpaceに対する操作を再開すれば自動切断はキャンセルされます。

補足 : Web Access (Web Client)の場合

ちなみにWeb Access (Web Client)の場合は画面上部にポップアップが表示される形で通知されます。

amazon-workspaces-supports-idle-disconnect-timeout-11

最後に

以上となります。

地味に便利な更新だと思います。
グループポリシーによる設定が必要なのでちょっと手間はかかりますが、うっかりミスによる切断忘れを解消してコスト節約に役立てることができるでしょう。

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.